package cn.edu.sgu.www.mhxysy.service;

import cn.edu.sgu.www.mhxysy.entity.RoleModeling;
import cn.edu.sgu.www.mhxysy.pager.RoleModelingPager;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.springframework.web.multipart.MultipartFile;

import java.io.IOException;
import java.util.List;

/**
 * @author heyunlin
 * @version 1.0
 */
public interface RoleModelingService {
	/**
	 * 添加角色造型
	 * @param modeling 角色造型信息
	 */
	void insert(RoleModeling modeling);

	/**
	 * 通过id修改角色造型
	 * @param modeling 角色造型信息
	 */
	void updateById(RoleModeling modeling);

	/**
	 * 查询全部角色造型
	 * @return List<RoleModeling>
	 */
	List<RoleModeling> selectAll();

	/**
	 * 通过id查询角色造型图片
	 * @param id 角色造型id
	 * @return String
	 */
	String selectImageById(Integer id);

	/**
	 * 通过id查询角色造型
	 * @param id 角色造型id
	 * @return RoleModeling
	 */
	RoleModeling selectById(Integer id);

	/**
	 * 通过性别查询角色造型
	 * @param sex 性别
	 * @return List<RoleModeling>
	 */
	List<RoleModeling> selectBySex(Integer sex);

	/**
	 * 通过种族查询角色造型
	 * @param phyle 种族
	 * @param gender 性别
	 * @return List<RoleModeling>
	 */
	List<RoleModeling> selectByPhyle(Integer phyle, Integer gender);

	/**
	 * 分页条件查询全部角色造型
	 * @param pager 分页参数对象
	 * @return Page<RoleModeling>
	 */
    Page<RoleModeling> selectByPage(RoleModelingPager pager);

    String upload(MultipartFile file) throws IOException;
}